home *** CD-ROM | disk | FTP | other *** search
- /*
- * cd_toc.h: header file that defines CD table-of-contents entries
- * Garance Alistair Drosehn/March 1994.
- *
- */
-
- #ifndef CD_TOC_INCLUDED
- #define CD_TOC_INCLUDED
-
- /* an entry in the toc (table-of-contents) info */
- struct toc_info {
- u_char control; /* control bits */
- u_int lblock; /* start address as logical-block */
- u_int hour:8, /* start address as MSF */
- min:8,
- sec:8,
- frame:8; /* there are 75 frames in a sec */
- u_int elapsedSec:16; /* elapsed seconds for this track */
- char *trackTitle; /* pointer to song title, if known */
- };
-
- /* control bits */
- #define PRE_EMPHASIS 0x1 /* pre-emphasis or not */
- #define DIGITAL_COPY 0x2 /* digital copy permitted (1) or not (0) */
- #define DATA_TRACK 0x4 /* data track (1) or audio track (0) */
- #define FOUR_CHANNEL 0x8 /* four channel (1) or two channel (0) */
-
- /* entire table of contents */
- struct cd_toc {
- u_short firsttrack:8,
- lasttrack:8;
- int naudio, /* number of audio tracks */
- ndata, /* number of data tracks */
- lastDataBlock; /* very last data block */
- char *discTitle; /* title of the CD */
- char *discPerformer; /* artist(s) on the CD */
- char *discCatNum; /* media catalog number (UPC) */
- struct toc_info info[101]; /* 0-99 + transition area (100) */
- };
-
- #endif
-